home *** CD-ROM | disk | FTP | other *** search
/ Power CD / Power CD ATARI-Rechner Lieben.iso / UTILITY / HSMODA01 / DRVIN.TXT < prev    next >
Encoding:
Text File  |  1993-11-23  |  7.0 KB  |  171 lines

  1. DRVIN.PRG (DRVIN.PRG)
  2. ========================
  3.  
  4. #### VORLÄUFIGSTE BESCHREIBUNG ######
  5. (Ich habe jetzt kein Zeit, alles ausführlich einzutippen. Wenn jemand 
  6. Treiber für andere Hardware oder einen "Treiberadapter" für Mint 
  7. schreiben will, kann er sich gern an mich wenden. Assemblerkenntnis 
  8. setze ich allerdings voraus. Später wird hier wohl die vollständige 
  9. Doku der Funktionen erscheinen.)
  10.  
  11.  
  12. Dieses Programm unterstützt nachladbare Gerätetreiber unter allen 
  13. TOS-Version sowie unter Mag!X ab V2.00. Mit Mag!X vor 2.00 sollte es 
  14. auch laufen.
  15.  
  16. Nachladbare Treiber bedeutet: DRVIN muß vor diesen im AUTO-Ordner 
  17. liegen!
  18.  
  19. DRVIN besteht aus drei wesentlichen Teilen: dem Anlegen des RSVF-Cookies, 
  20. der neuen Bconmap- und MAPTAB-Verwaltung für BIOS und XBIOS sowie den 
  21. Basisroutinen für die Installation einfacher Mag!X-kompatibler 
  22. Gerätetreiber.
  23.  
  24. Wenn man DRVIN und alle diese Treiber vor MiNT im \AUTO\ zu liegen hat, 
  25. sollte es ebenfalls _eingeschränkt_ funktionieren, denn sämtliche 
  26. GEMDOS-Funktionen der Treiber werden von MiNT abgehängt.
  27.  
  28.  
  29. Copyright
  30. ---------
  31. DRVIN darf unter folgenden Voraussetzungen frei kopiert werden:
  32. - Diese Anleitung wird unverändert mit kopiert.
  33. - Die Kopien sind kostenlos, oder auf dem üblichen Preisniveau einer 
  34. PD-Disk.
  35. - Das Beilegen zu PD- und Sharewareprodukten ist generell gestattet.
  36. - Zu kommerziellen Produkten darf DRVIN ebenfalls beigelegt werden, 
  37. der Vertreiber muß mich aber darüber informieren (Email genügt).
  38. - Ich bitte darum, DRVIN nur in Ausnahmefällen ohne Treiber zu 
  39. kopieren, denn der Erstnutzer kann ohne Treiber hiermit fast nichts 
  40. anfangen.
  41.  
  42. Übersetzungen dieser Texte in andere Sprachen sind ausdrücklich 
  43. erwünscht.
  44.  
  45. Ich bin an einer Fehlerfreiheit dieser Software interessiert. Deshalb 
  46. habe ich DRVIN gründlich getestet. Sollten Fehler auftreten, bitte 
  47. möglichst genaue Beschreibung an meine Email- oder Postadresse 
  48. schicken. Ich kann nur Fehler beseitigen, die ich anhand der 
  49. Beschreibung entweder reproduzieren kann oder bereits finde.
  50.  
  51. Ich hafte aber in keiner Weise für irgendwelche Auswirkungen, gleich 
  52. welcher Art, die der Einsatz oder Nichteinsatz von DRVIN oder dieser 
  53. Anleitung hat.
  54.  
  55. Meine Adressen:
  56. Mausnetz: Harun Scheutzow @B
  57. Internet: Harun_Scheutzow@B.maus.de
  58. Postanschrift:
  59. Harun Scheutzow
  60. Dresdener Straße 83
  61. D-10179 Berlin, Deutschland
  62.  
  63.  
  64. RSVF-Cookie
  65. -----------
  66. Es wird ein RSVF-Cookie angelegt, dessen Wert auf zwei 0-LONGs zeigt, also 
  67. auf ein Ende-Objekt. So brauchen Gerätetreiber keinen Cookie mehr 
  68. anzulegen, sondern sich nur noch in die RSVF-Listen einzuhängen. Zur 
  69. Beschreibung des RSVF-Cookies siehe das Textfile RSVF_COO.TXT.
  70.  
  71.  
  72. MAPTAB-Verwaltung
  73. -----------------
  74. Dieser Programmteil hängt im BIOS- und XBIOS-Trap und bearbeitet die 
  75. XBIOS-Funktionen Bconmap, Rsconf und Iorec(für AUX). Es werden die 
  76. BIOS-Funktionen Bconstat, Bconin, Bcostat und Bconout für Gerät AUX sowie 
  77. alle Geräte ab einschließlich 6 aufwärts bearbeitet. Bconmap und eine 
  78. MAPTAB werden unter jeder TOS-Version angelegt. Die Routinen des aktuell 
  79. per Bconmap eingestellten Gerätes werden zusätzlich in die xco*-Vektoren 
  80. (außer bei TOS1.00) kopiert, dort aber nicht benutzt. Zusätzlich 
  81. werden zwei neue Bconmap-Unterfunktionen mit den Opcodes -300 und -301 
  82. zum Überschreiben eines MAPTAB-Eintrages und zum Anhängen an die 
  83. MAPTAB bereitgestellt.
  84.  
  85. Die Länge der MAPTAB ist also nicht mehr fest begrenzt, ### momentan 
  86. liegt die Maximallänge bei 10 Einträgen, ist aber nur eine konstante 
  87. Variable in der Assemblerquelle und jederzeit erweiterbar.
  88.  
  89.  
  90. GEMDOS-Teil
  91. -----------
  92. Der sieht von außen aus wie die bisherigen HSMODEM1-Versionen und von 
  93. innen wie eine (### momentan noch) stark abgerüstete Mag!X-Beta. 
  94. Es werden Fopen, Fread, Fwrite, Fclose, Fcntl an den Treiber 
  95. weitergeleitet, aber alles mit fileptr == NULL.
  96.  
  97.  
  98. Aktionen
  99. --------
  100. Wird DRVIN auf einem TOS > 2.00 oder auf Mag!X >= 2.00 losgelassen, dann 
  101. kopiert es sich erstmal die alten Routinen aus den alten MAPTABs, so daß 
  102. eine Funktion der (X)BIOS-Aufrufe erstmal mit den alten TOS-Routinen 
  103. gegeben ist (schnarchlangsam). Bei TOS1.00 sieht es ganz übel aus, man muß 
  104. den MFP-Treiber nachladen, sonst geht SerialI/O nicht mehr (nur Zeiger auf 
  105. IOREC wird übertragen). Bei 1.00 < TOS < 2.00 geht es etwas, da nur Rsconf 
  106. nicht übertragen wird, aber deshalb muß man trotzdem den MFP-Treiber 
  107. nachladen.
  108.  
  109.  
  110. Mag!X- (und DRVIN-) freundliche Bco*-Routinen
  111. ---------------------------------------------
  112. veränderbare Register A0-A2/D0-D2 (auch bei Rsconf)
  113. Bconout muß mit dem Befehl
  114. move.b 7(sp),d0
  115.     oder auch: move.w 6(sp),d0
  116. beginnen und wird meist hinter diesem (Startadr+4) mit Parameter in d0.b 
  117. aufgerufen
  118.  
  119.  
  120. Neue XBIOS-Bconmap-Funktionen (300, 301)
  121. ----------------------------------------
  122. nur zum Einhängen/Dazuhängen der Mag!X-freundlichen Funktionen
  123.  
  124. In der MAPTAB ist Platz für mehr als 4 Geräte. Entweder Mag!X kann diesen 
  125. Platz dynamisch schaffen oder es gibt in MAG!X.INF einen Parameter, mit 
  126. dem sich die Maximalanzahl einstellen läβt. (### aktuell fest auf 10 
  127. begrenzt####)
  128.  
  129. Die XBIOS-Funktion Bconmap wird etwas erweitert:
  130.  
  131. Bconmap(-300, (WORD) dev_nr, (LONG) ptr_to_6_longs)
  132. dev_nr ist eine Gerätenummer ab 6 aufwärts, die in der MAPTAB bereits
  133. existieren muβ (andernfalls wird ein Fehlercode -15 EUNDEV zurückgegeben).
  134. ptr_to_6_longs zeigt auf eine Struktur, die einem MAPTAB-Eintrag entspricht.
  135. Diese Struktur wird auf den entsprechenden Platz in der MAPTAB kopiert und in
  136. D0 eine ok-Meldung (0) geliefert. Diese Funktion dient nur zum Einhängen
  137. Mag!X-freundlicher Routinen und muβ, falls das angesprochende Gerät auch das
  138. aktuelle ist, die Vektoren ebenfalls nach xco* und in die aktuellen rsconf
  139. und iorec-Zellen kopieren. Als Erfolgsmeldung wird die Gerätenummer
  140. zurückgegeben, auf die der Eintrag erfolgte, also dev_nr ist Rückgabewert.
  141.  
  142. Bconmap(-301, (LONG) ptr_to_6_longs)
  143. ähnlich -300, fügt aber einen Kanal an die MAPTAB an. Rückmeldung ist entweder
  144. die gewählte Kanalnummer für den Eintrag, oder der Fehlercode -12 EGENRL, falls
  145. kein Platz für eine MAPTAB-Vergröβerung mehr ist. Logischerweise kann es hier
  146. nicht vorkommen, das die Vektoren sofort nach xco* übertragen werden müssen.
  147.  
  148. Sind diese Erweiterungen nicht vorhanden, bekommt man beim Funktionsaufruf
  149. automatisch eine 0 als Fehlermeldung zurück.
  150.  
  151.  
  152. Versionen
  153. ---------
  154. Die Version ist anhand des Datums in der Startmeldung oder anhand des 
  155. Filedatums zu erkennen. Im Zweifelsfall hat die Startmeldung recht. 
  156. Das Datum ist entweder deutsch notiert (Tag.Monat.Jahr), oder als 
  157. Jahr-Monat-Tag. Die Unterscheidung dürfte anhand der immer 
  158. vierstelligen Jahreszahl eindeutig sein.
  159.  
  160. Neue Versionen werden zuerst in der Mausbox Berlin, Telefon 
  161. +49-30-6246510, zu finden sein (also 030-6246510 innerhalb 
  162. Deutschlands, Gastdownload in den Zeiten 10.00-18.59 und 23.00-03.59).
  163.  
  164. 1993-11-23
  165. im GEMDOS-Trap nun nur noch A0/D0 modifiziert, für solche Müllprogramme 
  166. wie STZIP u.ä. Modula-2 Auswüchse
  167. Fopen und Fclose werden an Devices weitergereicht
  168.  
  169.  
  170. Harun Scheutzow, 21.11.1993
  171.